//
//  CZBaseTableViewController.swift
//  微博08
//
//  Created by 1 on 16/2/28.
//  Copyright © 2016年 cjf. All rights reserved.
//

import UIKit

class CZBaseTableViewController: UITableViewController {

    var userLogin = CZUserAccountViewModel.sharedInstance.userLogin
    
    // 当用户没有登录那就使用自定义的界面，如果用户登录了就走父类的流程
    override func loadView() {
        
        userLogin ? super.loadView() : setupVistorView()
    }
    
    // 设置访客视图
    func setupVistorView(){
        self.view = visitorView
        
        // 4.设置代理
        visitorView.vistorViewDelegata = self
        
        // 判断是哪个控制器
        // as 类型转换用
        if self is CZHomeViewController {
            visitorView.iconViewRotation()
        }else if (self is CZMessageViewController) {
            // 设置访客视图
            visitorView.setupVisitorView("visitordiscover_image_message", message: "登陆后，别人评论你的微博，发给你的消息，都会在这里受到通知")
        }else if (self is CZDiscoverViewController) {
            visitorView.setupVisitorView("visitordiscover_image_message", message: "登陆后，最新、最热微博尽在掌握，不再会与实事潮流擦肩而过")
        }else if (self is CZProfileViewController) {
            visitorView.setupVisitorView("visitordiscover_image_profile", message: "登录后，你的微博、相册、个人资料会显示在这里，展示给别人")
        }
        
        // 设置导航栏按钮
        navigationItem.leftBarButtonItem = UIBarButtonItem(title: "注册", style: UIBarButtonItemStyle.Plain, target: self, action: "vistorViewRegisterButtonClick")
        
        navigationItem.rightBarButtonItem = UIBarButtonItem(title: "登录", style: UIBarButtonItemStyle.Plain, target: self, action: "vistorViewLoginButtonClick")
    }
    
    // MARK: - 懒加载
    lazy var visitorView: CZVistorView = CZVistorView()
    
}

// MARK: - 实现 CZVistorViewDelegate
extension CZBaseTableViewController: CZVistorViewDelegate {
    // MARK: - 实现代理方法
    func vistorViewRegisterButtonClick() {
        let networkTool = CZNetworkTool.sharedInstance
        print("networkTool: \(networkTool)")
    }
    
    func vistorViewLoginButtonClick() {
        //跳转到授权控制器
        let oauthVC = CZOauthViewController()
        
        presentViewController(UINavigationController(rootViewController: oauthVC), animated: true, completion: nil)
    }
    
}